namespace LS.UGFUnits
{
    using System;
    
    public partial class Utility
    {
        public class Types
        {
            public static readonly Type TypeByte = typeof (byte);
            public static readonly Type TypeSByte = typeof (sbyte);
            public static readonly Type TypeChar = typeof (char);
            public static readonly Type TypeString = typeof (string);
            public static readonly Type TypeInt = typeof (int);
            public static readonly Type TypeLong = typeof (long);
            public static readonly Type TypeShort = typeof (short);
            public static readonly Type TypeUInt = typeof (uint);
            public static readonly Type TypeULong = typeof (ulong);
            public static readonly Type TypeUShort = typeof (ushort);
            public static readonly Type TypeFloat = typeof (float);
            public static readonly Type TypeDouble = typeof (double);
            public static readonly Type TypeDecimal = typeof (decimal);
            public static readonly Type TypeBool = typeof (bool);
            public static readonly Type TypeObject = typeof (object);

            public static readonly Type TypeVector2 = typeof (UnityEngine.Vector2);
            public static readonly Type TypeVector3 = typeof (UnityEngine.Vector3);
            public static readonly Type TypeVector4 = typeof (UnityEngine.Vector4);
            public static readonly Type TypeQuaternion = typeof (UnityEngine.Quaternion);
            public static readonly Type TypeRect = typeof (UnityEngine.Rect);
            public static readonly Type TypeBounds = typeof (UnityEngine.Bounds);
            public static readonly Type TypeBoundsInt = typeof (UnityEngine.BoundsInt);
            public static readonly Type TypeColor = typeof (UnityEngine.Color);
            public static readonly Type TypeColor32 = typeof (UnityEngine.Color32);
            
            public static readonly Type TypeUObject = typeof (UnityEngine.Object);
            public static readonly Type TypeGameObject = typeof (UnityEngine.GameObject);
            public static readonly Type TypeTransform = typeof (UnityEngine.Transform);
            public static readonly Type TypeRectTransform = typeof (UnityEngine.RectTransform);
            public static readonly Type TypeComponent = typeof (UnityEngine.Component);
            public static readonly Type TypeMonoBehaviour = typeof (UnityEngine.MonoBehaviour);
            public static readonly Type TypeMaterial = typeof (UnityEngine.Material);
            public static readonly Type TypeTexture = typeof (UnityEngine.Texture);
        }
    }
}